<html>
<head><meta charset="utf-8"><title>Move graphviz code out of the compiler in… compiler-team#380 · t-compiler/major changes · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/index.html">t-compiler/major changes</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html">Move graphviz code out of the compiler in… compiler-team#380</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="214798430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214798430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> triagebot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214798430">(Oct 28 2020 at 05:53)</a>:</h4>
<p>A new proposal has been announced: <a href="https://github.com/rust-lang/compiler-team/issues/380">Move graphviz code out of the compiler into external crate #380</a>. It will be announced at the next meeting to try and draw attention to it, but usually MCPs are not discussed during triage meetings. If you think this would benefit from discussion amongst the team, consider proposing a design meeting.</p>



<a name="214798628"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214798628" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lzutao <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214798628">(Oct 28 2020 at 05:59)</a>:</h4>
<p><span class="user-mention" data-user-id="355545">@Vishnunarayan K. I.</span> Can we trust the author to keep maintain the crate ?<br>
Or do you mind transferring crate ownership to a rust-lang member ?</p>



<a name="214802087"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214802087" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214802087">(Oct 28 2020 at 07:20)</a>:</h4>
<p>I have both gotten publish as well as git repo push rights for this crate.</p>



<a name="214804350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214804350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214804350">(Oct 28 2020 at 07:57)</a>:</h4>
<p>Have you added the rust organization owner as a backup? (cc <span class="user-mention" data-user-id="121055">@Pietro Albini</span> for details.)</p>



<a name="214816347"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214816347" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214816347">(Oct 28 2020 at 10:16)</a>:</h4>
<p>add <code>rust-lang-owner</code> to the crate</p>



<a name="214818028"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214818028" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> vn-ki <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214818028">(Oct 28 2020 at 10:32)</a>:</h4>
<p>Done.</p>



<a name="214836711"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214836711" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214836711">(Oct 28 2020 at 13:38)</a>:</h4>
<p>Oh, wow, this graph diff is awesome!</p>
<p><a href="https://github.com/vn-ki/gsgdt-rs#diffing-two-graphs">https://github.com/vn-ki/gsgdt-rs#diffing-two-graphs</a></p>



<a name="214837104"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214837104" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214837104">(Oct 28 2020 at 13:41)</a>:</h4>
<p>We have support for rendering in <a href="https://github.com/rust-lang/rust/pull/76500">"dark mode"</a>. Would we be able to still support that with this crate? I see there's a <code>NodeStyles</code> type but I don't know how configurable it is.</p>



<a name="214837253"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214837253" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> vn-ki <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214837253">(Oct 28 2020 at 13:42)</a>:</h4>
<p>Yes, but the red and green (in the diff) isn't really configurable now.</p>
<p>I think I should push down the dark mode to the crate. Right now, rustc code will be handling it.</p>



<a name="214837438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214837438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214837438">(Oct 28 2020 at 13:44)</a>:</h4>
<p>Got it. That seems reasonable to me. I don't think rustc needs to be super picky about the colors but having a toggle for light/dark mode would be nice.</p>



<a name="214837466"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/214837466" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> triagebot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#214837466">(Oct 28 2020 at 13:44)</a>:</h4>
<p><span class="user-group-mention" data-user-group-id="492">@T-compiler</span>: Proposal <a href="https://github.com/rust-lang/compiler-team/issues/380#issuecomment-717942735">#380</a> has been seconded, and will be approved in 10 days if no objections are raised.</p>



<a name="215055070"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055070" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055070">(Oct 30 2020 at 04:02)</a>:</h4>
<p>Hmm, is anything still using the rustc_graphviz crate? If so, should we migrate them to gsgdt-rs ?</p>



<a name="215055084"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055084" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055084">(Oct 30 2020 at 04:03)</a>:</h4>
<p>in any case, it might be good to revise the title of this MCP to point out that it is only (so far) migrating the MIR graphviz usage</p>



<a name="215055097"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055097" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055097">(Oct 30 2020 at 04:03)</a>:</h4>
<p>(if I understand the PR correctly, that is)</p>



<a name="215055162"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055162" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055162">(Oct 30 2020 at 04:05)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116083">pnkfelix</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380/near/215055070">said</a>:</p>
<blockquote>
<p>Hmm, is anything still using the rustc_graphviz crate? If so, should we migrate them to gsgdt-rs ?</p>
</blockquote>
<p>(okay, yes, a bunch of stuff is still using rustc_graphviz)</p>



<a name="215055166"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055166" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055166">(Oct 30 2020 at 04:05)</a>:</h4>
<p>I suppose another option would be to migrate rustc_graphviz itself to use gsdt-rs</p>



<a name="215055216"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055216" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055216">(Oct 30 2020 at 04:06)</a>:</h4>
<p>that would certainly be less code-churn in the rest of code base, if it can be done at all. But it would also be pretty awful technical debt, and probably unnecessary tech debt.</p>



<a name="215055220"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215055220" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215055220">(Oct 30 2020 at 04:06)</a>:</h4>
<p>Anyway big <span aria-label="thumbs up" class="emoji emoji-1f44d" role="img" title="thumbs up">:thumbs_up:</span> from me.</p>



<a name="215059169"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215059169" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> vn-ki <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215059169">(Oct 30 2020 at 05:55)</a>:</h4>
<blockquote>
<p>pnkfelix: (if I understand the PR correctly, that is)</p>
</blockquote>
<p>That is only the initial PR. The future PRs will move dataflow to gsgdt.</p>
<blockquote>
<p>I suppose another option would be to migrate rustc_graphviz itself to use gsdt-rs</p>
</blockquote>
<p><del>gsgdt needs the content of the nodes and graph structure to do the diff. it isnt very clear how well that would fit in with the trait based rendering of <code>rustc_graphviz</code>.</del> (EDIT: I had misread. migrating just rustc_graphviz to gsgdt is an interesting idea)</p>



<a name="215060712"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215060712" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> vn-ki <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215060712">(Oct 30 2020 at 06:37)</a>:</h4>
<p>I want to point out that MIR to graphviz does not use <code>rustc_graphviz</code> currently. so churn in that is inevitable. (dataflow -&gt; graphviz does)</p>



<a name="215169415"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/215169415" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> tmandry <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#215169415">(Oct 31 2020 at 02:12)</a>:</h4>
<p><span class="user-mention" data-user-id="296355">@Rich Kadel</span> fyi, this might be relevant to some of the debug code you've written lately</p>



<a name="216338867"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Move%20graphviz%20code%20out%20of%20the%20compiler%20in%E2%80%A6%20compiler-team%23380/near/216338867" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> triagebot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Move.20graphviz.20code.20out.20of.20the.20compiler.20in.E2.80.A6.20compiler-team.23380.html#216338867">(Nov 11 2020 at 12:26)</a>:</h4>
<p>This proposal has been accepted: <a href="https://github.com/rust-lang/compiler-team/issues/380">#380</a>.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>